In concurrent garbage collection, conventional write barriers utilize either bit marking or address logging to remember the address of all objects that have had references updated. A conventional address logging write barrier requires extra storage space to keep the addresses of updated objects for all updates, resulting in memory overhead. A garbage collector employing a conventional bit marking write barrier has processing overhead of re-scanning multiple objects to identify the latest updates. Also, either of conventional write barrier method creates uncollectible floating garbage because objects may become unreachable after being marked during a concurrent marking phase. Conventional write barrier methods have disadvantages with regard to floating garbage, processing overhead and memory overhead.
Thus, there is a need for a system and associated method that overcomes at least one of the preceding disadvantages of current methods and systems for implementing a write barrier in garbage collection.